A wide variety of computer operating systems and computer application programs incorporate, display and/or perform operations on data or information which is hierarchical in nature. For example, most computer operating systems provide users access to a hierarchy of directories and/or sub-directories where documents, programs and/or other information are stored. Many computer e-mail systems likewise provide a hierarchy of files and/or sub-files in which e-mail messages may be stored. Organizer applications typically allow a user to establish task listings and/or store other forms of data which, once again, may be hierarchical in nature. The number and variety of computer systems and programs which store and/or manipulate hierarchical data sets continues to increase as computer processing applications continue to proliferate.
With the advent and expanded use of graphical user interfaces over the last fifteen or so years, it has become possible to display all or part of hierarchical data sets to the user of a computer via a “tree diagram” representation. Tree diagrams are particularly useful in displaying hierarchical data as the levels of the tree diagram visually depict the location of each piece of data in a way that quickly and intuitively conveys to a user both the location of the data within the hierarchy and the relationship of that data to other data in the hierarchy. Additionally, the hierarchical structure of a tree diagram may allow a user to more quickly and efficiently peruse the data, such as by reviewing the entries at the higher levels to locate particular branches which are most likely to contain the information of interest. A user also typically can “expand” or “collapse” the tree diagram at various points (i.e., displaying or hiding information in the higher levels of the tree) to further facilitate viewing the hierarchical data. Both custom programs, as well as tree diagram objects, are known in the prior art for providing a tree diagram graphical user interface to a user. For example, FIG. 3 is a screen capture of a prior art application (Microsoft Corporation's Windows Explorer) that includes a display area 5 containing hierarchical data displayed using a tree diagram graphical user interface.
While the use of tree viewer objects and custom tree viewer programs has expanded in recent years, so has the complexity of many of the hierarchical data sets that are displayed to the user via the tree diagram. Moreover, as computer memory and processing capabilities have expanded, users are now opening up more and more applications at the same time, resulting in desktop displays that typically have numerous windows open simultaneously in what may be a confusing, layered display of icons, windows and the like. Additionally hierarchical data is now displayed using tree diagrams on many mobile computing devices that have different constraints in terms of the size of the display and the control of windows. The complexity of the hierarchical data sets and the proliferation of environments in which they may be used have left a need for improved graphical user interfaces that display hierarchical data in tree diagram form.